package wiring

import play.api._
import com.softwaremill.macwire._
import utils.CommonDB
import play.api.i18n.MessagesApi
import play.api.mvc._

import scala.concurrent.ExecutionContext
trait BasicSecurityWiring {

  implicit val executionContext: ExecutionContext
  val configuration: Configuration
  val messagesApi: MessagesApi
  val CommonDB: CommonDB
  val playBodyParsers: PlayBodyParsers

}

class BasicSecurityWiringImpl(
    val configuration: Configuration,
    val messagesApi: MessagesApi,
    val CommonDB: CommonDB,
    val playBodyParsers: PlayBodyParsers
)(
    implicit val executionContext: ExecutionContext,
) extends BasicSecurityWiring
